import { createStore } from 'vuex'
import { getMusicLyric } from '@/request/api/item'
import {getPhoneLogin} from '@/request/api/home'

export default createStore({
  state: {
    playList: [{ //播放列表
      al: {
        id: 89039055,
        name: "雨爱抖音版",
        pic: 109951164966568500,
        picUrl: "https://p1.music.126.net/2f6UgY8Jc0Dy6jufMdIZeQ==/109951164966568495.jpg",
        pic_str: "109951164966568495"
      },
      id: 1446137141,
      name: "雨爱（抖音版）",
      ar:[{name: "灏灏灏仔"}]
    }],
    playListIndex: 0, // 默认列表下标
    isbtnShow:true, // 播放图标显示标识
    detailShow: false, // 歌曲详情展示标识
    lyricList:{}, // 歌词列表
    currentTime:0, // 当前歌曲播放时间
    duration: 0, // 歌曲总时长
    isLogin:false, // 当前登录状态
    isFooterShow:true, // 底部组件是否显示
  },
  getters: {
  },
  mutations: {
    // 更改播放图标标识变量
    updateIsbtnShow(state,value){
      state.isbtnShow = value
    },
    // 更改播放列表
    updatePlayList(state,value){
      state.playList = value
    },
    // 更改播放列表下标
    updatePlayListIndex(state,value){
      state.playListIndex = value
    },
    // 更改歌曲详情遮罩显示变量
    updatedetailShow(state){
      state.detailShow = !state.detailShow
    },
    // 获取歌词列表存入vuex
    updateLyricList(state,value){
      state.lyricList = value
    },
    // 修改当前歌曲播放时间
    updateCurrentTime(state,value){
      console.log(state.currentTime);
      state.currentTime = value
    },
    // 修改歌曲总时长
    updateDuration(state,value){
      state.duration = value
    },
    // 给歌曲列表添加歌曲
    pushPlayList(state,value){
      state.playList.push(value)
    }
  },
  actions: {
    // 异步获取歌词
    async getLyric(context,value){
      let res = await getMusicLyric(value)
      console.log(res);
      context.commit('updateLyricList',res.data.lrc)
    },
    // 登录方法
    async getLogin(context,value){
      let res=await getPhoneLogin(value);
      // console.log(res);
      return res
    }
  },
  modules: {
  }
})
